package com.ruoyi.system.domain;

import java.util.List;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.entity.SysUser;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 健身计划信息对象 fitnessplans
 * 
 * @author 张英旺
 * @date 2024-02-27
 */
public class Fitnessplans extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 健身计划ID */
    private Long fitnessPlanId;


    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;

    /** 训练计划描述 */
    @Excel(name = "训练计划描述")
    private String fitnessPlanDescription;

    /** 训练计划周期 */
    @Excel(name = "训练计划周期")
    private String fitnessPlanDuration;

    /** 健身计划推荐ID */
    @Excel(name = "健身计划推荐ID")
    private Long scheduleId;

    /** 计划开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划开始时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date fitnessPlanStarttime;

    /** 训练计划状态 */
    @Excel(name = "训练计划状态")
    private String fitnessPlanState;

    /** 用户信息信息 */
    private List<SysUser> sysUserList;
    /** 健身计划推荐信息 */
    private List<Schedule> scheduleList;

    public void setFitnessPlanId(Long fitnessPlanId) 
    {
        this.fitnessPlanId = fitnessPlanId;
    }

    public Long getFitnessPlanId() 
    {
        return fitnessPlanId;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setFitnessPlanDescription(String fitnessPlanDescription) 
    {
        this.fitnessPlanDescription = fitnessPlanDescription;
    }

    public String getFitnessPlanDescription() 
    {
        return fitnessPlanDescription;
    }
    public void setFitnessPlanDuration(String fitnessPlanDuration) 
    {
        this.fitnessPlanDuration = fitnessPlanDuration;
    }

    public String getFitnessPlanDuration() 
    {
        return fitnessPlanDuration;
    }
    public void setScheduleId(Long scheduleId) 
    {
        this.scheduleId = scheduleId;
    }

    public Long getScheduleId() 
    {
        return scheduleId;
    }
    public void setFitnessPlanStarttime(Date fitnessPlanStarttime) 
    {
        this.fitnessPlanStarttime = fitnessPlanStarttime;
    }

    public Date getFitnessPlanStarttime() 
    {
        return fitnessPlanStarttime;
    }
    public void setFitnessPlanState(String fitnessPlanState) 
    {
        this.fitnessPlanState = fitnessPlanState;
    }

    public String getFitnessPlanState() 
    {
        return fitnessPlanState;
    }

    public List<SysUser> getSysUserList()
    {
        return sysUserList;
    }

    public void setSysUserList(List<SysUser> sysUserList)
    {
        this.sysUserList = sysUserList;
    }

    public List<Schedule> getScheduleList()
    {
        return scheduleList;
    }

    public void setScheduleList(List<Schedule> scheduleList)
    {
        this.scheduleList = scheduleList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("fitnessPlanId", getFitnessPlanId())
            .append("userId", getUserId())
            .append("fitnessPlanDescription", getFitnessPlanDescription())
            .append("fitnessPlanDuration", getFitnessPlanDuration())
            .append("scheduleId", getScheduleId())
            .append("fitnessPlanStarttime", getFitnessPlanStarttime())
            .append("fitnessPlanState", getFitnessPlanState())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .append("updateTime", getUpdateTime())
            .append("updateBy", getUpdateBy())
            .append("sysUserList", getSysUserList())
            .append("scheduleList", getScheduleList())
            .toString();
    }
}
